﻿using System.Security.Principal;

namespace Sidvall.Security
{
    public interface IPrincipalProvider
    {
        IPrincipal CurrentPrincipal { get; set; }

        /// <summary>
        /// Sets the default principal object to be attached to threads if they attempt to 
        /// bind to a principal while executing in this application domain.
        /// </summary>
        void SetThreadPrincipal(IPrincipal principal);
    }
}
